{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "origin_pos": 0
   },
   "source": [
    "# 安装\n",
    ":label:`chap_installation`\n",
    "\n",
    "我们需要配置一个环境来运行 Python、Jupyter Notebook、相关库以及运行本书所需的代码，以快速入门并获得动手学习经验。\n",
    "\n",
    "## 安装 Miniconda\n",
    "\n",
    "最简单的方法就是安装依赖Python 3.x的[Miniconda](https://conda.io/en/latest/miniconda.html)。\n",
    "如果已安装conda，则可以跳过以下步骤。访问Miniconda网站，根据Python3.x版本确定适合你的系统的版本。\n",
    "\n",
    "如果你使用macOS，假设你的Python版本是3.8（我们的测试版本），你将下载名称包含字符串“MacOSX”的bash脚本，并执行以下操作：\n",
    "\n",
    "```bash\n",
    "# 文件名可能会更改\n",
    "sh Miniconda3-py38_4.10.3-MacOSX-x86_64.sh -b\n",
    "```\n",
    "\n",
    "如果你使用Linux，假设你的Python版本是3.8（我们的测试版本），你将下载名称包含字符串“Linux”的bash脚本，并执行以下操作：\n",
    "\n",
    "```bash\n",
    "# 文件名可能会更改\n",
    "sh Miniconda3-py38_4.10.3-Linux-x86_64.sh -b\n",
    "```\n",
    "\n",
    "接下来，初始化终端Shell，以便我们可以直接运行`conda`。\n",
    "\n",
    "```bash\n",
    "~/miniconda3/bin/conda init\n",
    "```\n",
    "\n",
    "现在关闭并重新打开当前的 shell。你应该能用下面的命令创建一个新的环境：\n",
    "\n",
    "```bash\n",
    "conda create --name d2l python=3.8 -y\n",
    "```\n",
    "\n",
    "现在激活 `d2l` 环境：\n",
    "\n",
    "```bash\n",
    "conda activate d2l\n",
    "```\n",
    "\n",
    "## 安装深度学习框架和`d2l`软件包\n",
    "\n",
    "在安装深度学习框架之前，请先检查你的计算机上是否有可用的GPU。\n",
    "例如，你可以查看计算机是否装有NVIDIA GPU并已安装[CUDA](https://developer.nvidia.com/cuda-downloads)。\n",
    "如果你的机器没有任何GPU，没有必要担心，因为你的CPU在前几章完全够用。\n",
    "但是，如果你想流畅地学习全部章节，请提早获取GPU并且安装深度学习框架的GPU版本。\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "origin_pos": 2,
    "tab": [
     "pytorch"
    ]
   },
   "source": [
    "你可以按如下方式安装PyTorch的CPU或GPU版本：\n",
    "\n",
    "```bash\n",
    "pip install torch==1.8.1\n",
    "pip install torchvision==0.9.1\n",
    "```\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "origin_pos": 4
   },
   "source": [
    "我们的下一步是安装`d2l`包，以方便调取本书中经常使用的函数和类：\n",
    "\n",
    "```bash\n",
    "pip install d2l==0.17.1\n",
    "```\n",
    "\n",
    "## 下载 D2L Notebook\n",
    "\n",
    "接下来，需要下载这本书的代码。\n",
    "你可以点击本书HTML页面顶部的“Jupyter 记事本”选项下载后解压代码。\n",
    "或者，你可以按照如下方式进行下载：\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "origin_pos": 6,
    "tab": [
     "pytorch"
    ]
   },
   "source": [
    "```bash\n",
    "mkdir d2l-zh && cd d2l-zh\n",
    "curl https://zh-v2.d2l.ai/d2l-zh-2.0.0.zip -o d2l-zh.zip\n",
    "unzip d2l-zh.zip && rm d2l-zh.zip\n",
    "cd pytorch\n",
    "```\n",
    "\n",
    "\n",
    "注意：如果你没有安装`unzip`，则可以通过运行`sudo apt install unzip`进行安装。\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "origin_pos": 8
   },
   "source": [
    "安装完成后，你可以通过运行以下命令打开Jupyter笔记本：\n",
    "\n",
    "```bash\n",
    "jupyter notebook\n",
    "```\n",
    "\n",
    "现在，你可以在Web浏览器中打开<http://localhost:8888>（通常会自动打开）。\n",
    "由此，你可以运行这本书中每个部分的代码。\n",
    "在运行书籍代码、更新深度学习框架或`d2l`软件包之前，请始终执行`conda activate d2l`以激活运行时环境。\n",
    "要退出环境，请运行`conda deactivate`。\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "origin_pos": 10,
    "tab": [
     "pytorch"
    ]
   },
   "source": [
    "[Discussions](https://discuss.d2l.ai/t/2083)\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "name": "python3"
  },
  "language_info": {
   "name": "python"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}